﻿using System.Collections.Generic;

namespace NJabber.Client
{
    public interface IRosterCache
    {
        IEnumerable<RosterItem> Items { get; }
        RosterItem this[JID itemJid] { get; }
        void Add(RosterItem item);
        void Remove(JID itemJid);
        void Push(RosterItem item);
        void Sync();
        void Invalidate();
        void Reset(IEnumerable<RosterItem> initialRoster = null);
    }
}
